Techniques for capturing similarity among items have been applied in many areas ranging from computer vision and image processing to audio signal processing and information retrieval. Such techniques have been used for various applications including exploratory data analysis, interactive search, clustering, collaborative filtering and classification.
Conventional techniques for capturing similarity among items rely on constructing a mathematical model to quantitatively represent characteristics of the set of items that are indicative of a degree of similarity among the items. For example, many approaches involve constructing an N by N similarity matrix, sometimes termed a similarity kernel, over all pairs of N items. The entry stored in row m and column n of the similarity matrix represents a quantitative measure of similarity between item m and item n, and represents characteristics of the corresponding items.